課程資訊
課程名稱
演算法
Algorithms 
開課學期
106-1 
授課對象
電機工程學系  
授課教師
江蕙如 
課號
EE4033 
課程識別碼
901 39000 
班次
02 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期四7,8,9(14:20~17:20) 
上課地點
電二146 
備註
總人數上限:60人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1061EE4033_02 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

The study of algorithms is at the heart of computer science. This course focuses on fundamental results in this area, including the unifying principles and underlying concepts of algorithm design and analysis.
We expect everyone to be comfortable reading, even writing, proofs. Several programming assignments will be given to embody the ideas. Moreover, we hope that everyone can learn general problem-solving techniques.
Intended audience:
1. who are interested in computer science
2. who are computing something
3. who are learning problem-solving techniques 

課程目標
1. Study unifying principles and concepts of algorithm design
2. Polish your critical thinking and problem-solving technique 
課程要求
Prerequisite: two out of the following four courses
1. Data structures
2. Discrete mathematics
3. Computer programming in C
4. Computer programming in C++ 
預期每週課後學習時數
 
Office Hours
每週一 13:30~14:30
每週四 13:30~14:00 備註: Made by appointment. Mondays: TA; Thursdays: Instructor  
指定閱讀
J. Kleinberg and E. Tardos, Algorithm Design, Addison Wesley, 2006 (Cornell) 
參考書目
1. S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani, Algorithms, McGraw-Hill,
2007 (UC Berkeley)
2. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to
Algorithms, 3rd Ed., McGraw Hill/MIT Press, 2009 (Bible! MIT)
 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
Homework assignments 
10% 
 
2. 
Programming projects 
40% 
Two mini-projects: 20% + term project: 20% 
3. 
In-class tests 
50% 
Midterm: 25% + Final: 25% 
4. 
Adjustment 
0% 
Adjustment: +-5% for each item 
 
課程進度
週次
日期
單元主題
第1週
9/14  Overview and Introduction 
第2週
9/21  Basics of algorithm analysis 
第3週
9/28  Graphs 
第4週
10/05  Graphs 
第5週
10/12  Greedy algorithms 
第6週
10/19  Greedy algorithms 
第7週
10/26  Divide and conquer 
第8週
11/02  Divide and conquer 
第9週
11/09  Dynamic programming 
第10週
11/16  Midterm 
第11週
11/23  Dynamic programming 
第12週
11/30  Network flow 
第13週
12/07  NP completeness 
第14週
12/14  Amortized analysis 
第15週
12/21  Linear programming (optional) + midterm solutions 
第16週
12/28  Advanced topics - Intelligent and Connected Vehicles 
第17週
1/04  Final 
第18週
1/11  Project presentation